A Reversible Semantics for Erlang
نویسندگان
چکیده
In a reversible language, any forward computation can be undone by a finite sequence of backward steps. Reversible computing has been studied in the context of different programming languages and formalisms, where it has been used for debugging and for enforcing faulttolerance, among others. In this paper, we consider a subset of Erlang, a concurrent language based on the actor model, and formally introduce a semantics for reversible computation. To the best of our knowledge, this is the first attempt to define a reversible semantics for Erlang.
منابع مشابه
Towards Reversible Computation in Erlang
In a reversible language, any forward computation can be undone by a finite sequence of backward steps. Reversible computing has been studied in the context of different programming languages and formalisms, where it has been used for debugging and for enforcing faulttolerance, among others. In this paper, we consider a subset of Erlang, a concurrent language based on the actor model. We formal...
متن کاملBuilding Semantic Agents in eXAT
This paper describes the FIPA-ACL semantics support provided by eXAT, an Erlang-based FIPA-compliant agent platform, developed by the authors, which uses the Erlang language to offer a complete environment for the realization of the behavioral, intelligent and social parts of an agent. eXAT agents can thus exploit a FSM-based abstraction for the behavioral part and an Erlang-based rule processi...
متن کاملOn Lifetime Optimization of Boolean Parallel Systems with Erlang Repair Distributions
We assume a Boolean parallel system with exponentially distributed component failure times. In order to maximize the lifetime of the system we consider a repairman with Erlang-k distributed repair time. By extending the classical exponential case k = 1 to k ≥ 2 different repair semantics arise in this context. In the case of restart repair semantics we show that a repairman should have few Erla...
متن کاملVerification of Timed Erlang Programs Using McErlang
There is a large number of works that apply model checking to timed specifications, however, there are far fewer attempts at model checking concurrent programs for which correct timed behaviour is crucial. In this work we explore the formal verification of timed programs written in the Erlang concurrent programming language, in its full complexity, using the McErlang model checker. We have exte...
متن کاملTowards a Formalisation of Erlang Failure and Failure Detection
This paper discusses preliminary investigations on the behaviour of the error handling mechanisms in Erlang, a parallel language which is renowned for its fault tolerant capabilities. A formal model is defined in order to provide a precise and unambiguous description of the behaviour of these mechanisms. The correctness of the model is evaluated by considering a simple Erlang program and compar...
متن کامل